package com.geekhome.player.domain.entity;

import com.geekhome.player.domain.valueobj.Address;
import com.geekhome.player.domain.valueobj.LoginSecurity;
import com.geekhome.player.domain.valueobj.PlayerExt;
import com.geekhome.player.domain.valueobj.ZnCharacter;
import lombok.Data;
import org.bson.types.ObjectId;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.index.Indexed;
import org.springframework.data.mongodb.core.mapping.Document;

import java.time.LocalDateTime;
import java.util.List;

/**
 * Copyright © 2019年 platform. All rights reserved.
 *
 * @author 临江仙 hzqiuxm@163.com
 * 用户基本信息实体类
 * @date 2019/8/22 9:36
 */
@Data
@Document("player_base")
public class PlayerBaseDO {
    /**
     * 用户编号
     */
    @Id
    private ObjectId id;

    /**
     * 用户名,唯一性
     */
    @Indexed(unique = true,dropDups=true)
    private String userName;

    /**
     * 节操值
     */
    private Integer jc;

    /**
     * 昵称或花名
     */
    private String showName;

    private String password;

    /**
     * 手机号，也可以作为登录名使用
     */
    @Indexed(unique = true,dropDups=true)
    private String cellNum;

    /**
     * 邮箱信息
     */
    private String email;

    /**
     * 用户扩展性信息
     */
    private PlayerExt playerExt;

    /**
     * 职业角色信息
     */
    private ZnCharacter znCharacter;


    /**
     * 用户安全登录安全信息
     */
    private LoginSecurity loginSecurity;

    /**
     * 角色信息
     */
    private List<String> roles;


    private LocalDateTime gmtCreate;

    private LocalDateTime gmtModfiy;

    /**
     * 用户账号状态
     * 0 注册未激活  1 正常激活 8 冻结 9 销户
     */
    private Integer status;
}
